import {
  ADD_COUNTER,
  ADD_TO_CART,
  DELETE_TO_CART
} from './mutation-types'

export default {
  // 有判断的逻辑最后在actions里面调用
  addCart(context, payload) {
    return new Promise((resolve) => {
      // 1.查找之前那数组中是否有该商品
      let oldProduct = context.state.cartList.find(item => item.iid === payload.iid)

      // 2.判断oldProduct是否已经存在
      if (oldProduct) {
        // oldProduct.count += 1
        context.commit(ADD_COUNTER, oldProduct)
        resolve('当前的商品数量+1')
      } else {
        payload.count = 1
        // context.state.cartList.push(payload)
        context.commit(ADD_TO_CART, payload)
        resolve('添加了新的商品')
      }
    })
  },
  deleteGoods(context, payload) {
    // payload 就是传入的参数
    context.commit(DELETE_TO_CART, payload)
  }
}